package com.iot.ic.service;

import java.util.List;
import java.util.Map;

import com.iot.ic.model.MatchScenesInfo;
import com.iot.ic.model.RefereeInfo;
import com.iot.ic.model.TeamInfo;





/**
 * Created by xiuge on 2017/2/20.
 */
public interface MatchScenesService {
	
   /**
    * 根据赛场获得场景Id集合
    * @param stadiumId
    * @return
    */
    List<Integer> listMatchScenesIds(int stadiumId);
  
   
    /**
     * 根据Id获得场景的详情
     * @param scenesId
     * @return
     */
    MatchScenesInfo getMatchScenesInfo(int scenesId);
    
    
    /**
     * 根据Id获得场景的详情
     * @param scenesId
     * @return
     */
    MatchScenesInfo getMatchScenesInfoWithIllegal(int scenesId);
    
    //根据id获取设备信息
    MatchScenesInfo getMatchScenesInfoWithEquipment(int scenesId);
    
    
    /**
     * 开始比赛场景打分
     * @param scenesId
     * @return
     */
    MatchScenesInfo startMatchScenes(int stadiumScenesId, int stadiumResultId);

    
    /**
     * 根据赛场获得场景Id集合
     * @param stadiumId
     * @return
     */
     List<MatchScenesInfo> listScenesByStadium(int stadiumId);
     /**
      * 根据赛场获得场景Id集合
      * @param stadiumId
      * @return
      */
      int addMatchScenes(MatchScenesInfo matchScenes);
      /**
       * 根据赛场获得场景Id集合
       * @param stadiumId
       * @return
       */
      MatchScenesInfo getMatchScenesById(int scenesId);
      /**
       * 更新场景信息
       * @param stadiumId
       * @return
       */
      int updateMatchScenes(MatchScenesInfo matchScenes);
      /**
       * 删除场景信息
       * @param stadiumId
       * @return
       */
      int deleteMatchScenes(int scenesId);
      /**
       * 根据赛场获未绑定的场景集合
       * @param stadiumId
       * @return
       */
       List<MatchScenesInfo> listUnboundScenesByStadium(int stadiumId);
       
       /**
        * 根据赛场获绑定的场景集合
        * @param stadiumId
        * @return
        */
        List<MatchScenesInfo> listBoundScenesByStadium(int stadiumId);
       
       /**
        * 根据赛场获得场景Id集合
        * @param stadiumId
        * @return
        */
        List<MatchScenesInfo> listAllScenes(MatchScenesInfo matchScenes);

    List<MatchScenesInfo> pageScenes(MatchScenesInfo matchScenesInfo, Integer pageNo, Integer pageSize);
    int pageTotal(MatchScenesInfo matchScenesInfo);

 /**
  * 查询场景名称是否存在
  * @param matchScenesInfo
  * @return
  */
 int checkNameExist(MatchScenesInfo matchScenesInfo);
}
